@echo off
echo 正在构建PDF条形码扫描与分类工具的可执行文件...

:: 确保Maven已安装
where mvn >nul 2>nul
if %ERRORLEVEL% NEQ 0 (
    echo 错误：未找到Maven。请确保Maven已安装并添加到PATH环境变量中。
    pause
    exit /b 1
)

:: 检查Java环境
if "%JAVA_HOME%"=="" (
    echo 警告：未设置JAVA_HOME环境变量。建议设置JAVA_HOME以确保正确的Java版本。
    echo 继续使用PATH中的Java...
)

:: 检查图标文件
if not exist "src\main\resources\icon.ico" (
    echo 警告：未找到图标文件（src\main\resources\icon.ico）
    echo 将使用默认图标...
    
    :: 创建resources目录（如果不存在）
    if not exist "src\main\resources" mkdir "src\main\resources"
)

:: 创建输出目录
if not exist target mkdir target

:: 清理先前的构建
echo 清理先前的构建...
call mvn clean

:: 编译和打包
echo 编译和打包项目...
call mvn package

:: 检查打包是否成功
if not exist "target\PDFBarcodeScanner.exe" (
    echo 错误：构建失败，未能创建可执行文件。
    pause
    exit /b 1
)

echo.
echo 构建完成！可执行文件已生成：target\PDFBarcodeScanner.exe
echo.
echo 你可以复制以下文件到一个新文件夹中分发：
echo 1. target\PDFBarcodeScanner.exe
echo 2. 创建一个空的output文件夹（用于保存输出文件）
echo 3. 创建一个空的logs文件夹（用于保存日志）
echo.

:: 创建发布目录
echo 创建发布包...
if not exist "release" mkdir "release"
if not exist "release\output" mkdir "release\output"
if not exist "release\logs" mkdir "release\logs"

:: 复制文件到发布目录
copy "target\PDFBarcodeScanner.exe" "release\"
copy "使用说明.txt" "release\"
echo 已创建发布包，位于release目录

echo.
echo 如果您想创建完整的发布包，请运行package.bat脚本
echo.

pause 